/// 
/// MaDAson - Toolkit for Model Driven Software Development
/// 
/// Copyright [2006] Marcus Lankenau
/// 
/// Licensed under the Apache License, Version 2.0 (the "License");
/// you may not use this file except in compliance with the License.
/// You may obtain a copy of the License at
///  
///     http://www.apache.org/licenses/LICENSE-2.0
///  
/// Unless required by applicable law or agreed to in writing, software
/// distributed under the License is distributed on an "AS IS" BASIS,
/// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
/// See the License for the specific language governing permissions and
/// limitations under the License.
/// 



using System;
using System.Collections.Generic;
using System.Text;
using Madason.GenUtils;
using Madason.MetaModel.Interfaces;
using System.IO;

namespace Madason.ModelUtil
{
	/// <summary>
	/// Main program
	/// 
	/// work in progress..
	/// </summary>
	class Program
	{
		static void Main(string[] args)
		{
			GeneratorWorkflow workflow = new GeneratorWorkflow(args);

			workflow.AddParameterDefinition("target", ParameterType.File, "Destination XMI file", true);

			workflow.CheckCommandLine();
			workflow.LoadModel();

			ModelTransformation.ERToEntity transformation = new Madason.ModelUtil.ModelTransformation.ERToEntity();
			transformation.Transform(workflow.Model);

			ExportXmi11 export = new ExportXmi11();
			using (StreamWriter writer = new StreamWriter(workflow.GetArg("target")))
			{
				export.Export(workflow.Model, writer);
			}
			


		}
	}
}
